// 菜单对应

class treefun {

 treeData (jsonData) {
  return this.treeDatax(jsonData, '0');
}

// 菜单对应
 treeDatax(jsonData, rootPid) { 
  var resultObj = [];
  
  function tree(jsonData) { 
    // 取得顶级的数据
    var baseNode = jsonData.filter(function (element) {
      return element.pid === rootPid;
    });
    resultObj.push(...baseNode); 
    getChildren(resultObj, jsonData);
  }

  // 递归取得顶层节点的子节点
  function getChildren(nodeList, jsonData) { 
    nodeList.forEach(function (elemet, index) {
      elemet.children = jsonData.filter(function (item, indexI) {
        return item.pid === elemet.id;
      });
      if (elemet.children.length > 0) {
        getChildren(elemet.children, jsonData);
      }
    });
  }
  tree(jsonData);
  return resultObj;
}

}

module.exports = {
  treefun
};